点云学习笔记4 |
您所在的位置:网站首页 › 激光雷达 使用 › 点云学习笔记4 |
点云学习笔记4——robosense激光雷达使用教程 一、robosense使用手册 二、robosense使用教程 2.1. 环境准备 2.2. 代码下载 2.3、观看实时点云数据例子 2.3.1、建立工作空间 2.3.2、复制源码到工作空间 2.3.3、配置ip——设置电脑的静态ip 2.3.4、执行以下命令即可编译&运行 2.3.5、通过“rviz”来观看点云 2.3.6、参数说明 三、录制点云离线包: 四、 离线解码 五、参考: 一、robosense使用手册
安装ros环境见我另外一篇文章:ros学习笔记1——Ubuntu18.04安装ROS Melodic 2.2. 代码下载代码地址:https://github.com/RoboSense-LiDAR/rslidar_sdk可以直接下载sdk包:(用户可以直接访问 rslidar_sdk_release 下载最新版本的rslidar_sdk. 请下载 rslidar_sdk.tar.gz 压缩包, 不要下载Source code, 因为Source code压缩包内不包含子模块rs_driver的代码, 用户还需自行下载rs_driver的代码放入其中才行。) https://github.com/RoboSense-LiDAR/rslidar_sdk/releases 官方中文使用教程:https://github.com/RoboSense-LiDAR/rslidar_sdk/blob/release/README_CN.md 工程简介:rslidar_sdk 为速腾聚创在Ubuntu环境下的雷达驱动软件包,包括了雷达驱动内核, ROS拓展功能,ROS2拓展功能,Protobuf-UDP通信拓展功能。对于没有二次开发需求的用户,或是想直接使用ROS或ROS2进行二次开发的用户,可直接使用本软件包, 配合ROS或ROS2自带的RVIZ可视化工具即可查看点云。 对于有更深一步二次开发需求,想将雷达驱动集成到自己工程内的客户, 请参考雷达驱动内核的相关文档,直接使用内核rs_driver进行二次开发。 2.3.1、建立工作空间 mkdir -p ~/robosense_ws/src 2.3.2、复制源码到工作空间将下载的sdk压缩比复制到~/robosense_ws/src目录下,并解压。相对位置如下: └── robosense_ws └── src └── rslidar_sdk先做以下修改。 (1) 打开工程内的CMakeLists.txt文件,将文件顶部的set(COMPILE_METHOD ORIGINAL)改为set(COMPILE_METHOD CATKIN)。 (2) 将rslidar_sdk工程目录下的package_ros1.xml文件重命名为package.xml。 2.3.3、配置ip——设置电脑的静态ip默认情况下,RSLIDAR雷达设备ip设置为192.168.1.200,而PC ip则设置为192.168.1.102;同时默认MSOP端口为6699,DIFOP端口为7788. 所以需将PC ip设置为静态ip 192.168.1.102才能和雷达通信。 激光雷达网线连接电脑并接入电源,进入ubuntu系统设置settings,配置有线网络参数,获取方式改为手动。地址:192.168.1.102 掩码:255.255.255.0网关:192.168.1.1 DNS:223.5.5.5
在 /home/xxxxx/robosense_ws/src/rslidar_sdk/config 目录下打开config.yaml文件,进行相应修改。主要修改以下内容:你的雷达的型号,以及端口号等 lidar_type: RSHELIOS #LiDAR type - RS16, RS32, RSBP, RS128, RS80, RSM1, RSHELIOS msop_port: 1990 #Msop port of lidar difop_port: 1991 #Difop port of lidar我的完整配置文件如下: common: msg_source: 1 #0: not use Lidar #1: packet message comes from online Lidar #2: packet message comes from ROS or ROS2 #3: packet message comes from Pcap file #4: packet message comes from Protobuf-UDP #5: point cloud comes from Protobuf-UDP send_packet_ros: false #true: Send packets through ROS or ROS2(Used to record packet) send_point_cloud_ros: true #true: Send point cloud through ROS or ROS2 send_packet_proto: false #true: Send packets through Protobuf-UDP send_point_cloud_proto: false #true: Send point cloud through Protobuf-UDP pcap_path: /home/robosense/lidar.pcap #The path of pcap file lidar: - driver: lidar_type: RSHELIOS #LiDAR type - RS16, RS32, RSBP, RS128, RS80, RSM1, RSHELIOS frame_id: /rslidar #Frame id of message msop_port: 1990 #Msop port of lidar difop_port: 1991 #Difop port of lidar start_angle: 0 #Start angle of point cloud end_angle: 360 #End angle of point cloud min_distance: 0.2 #Minimum distance of point cloud max_distance: 200 #Maximum distance of point cloud use_lidar_clock: false #True--Use the lidar clock as the message timestamp #False-- Use the system clock as the timestamp ros: ros_recv_packet_topic: /rslidar_packets #Topic used to receive lidar packets from ROS ros_send_packet_topic: /rslidar_packets #Topic used to send lidar packets through ROS ros_send_point_cloud_topic: /rslidar_points #Topic used to send point cloud through ROS proto: point_cloud_recv_port: 60021 #Port number used for receiving point cloud point_cloud_send_port: 60021 #Port number which the point cloud will be send to msop_recv_port: 60022 #Port number used for receiving lidar msop packets msop_send_port: 60022 #Port number which the msop packets will be send to difop_recv_port: 60023 #Port number used for receiving lidar difop packets difop_send_port: 60023 #Port number which the difop packets will be send to point_cloud_send_ip: 127.0.0.1 #Ip address which the point cloud will be send to packet_send_ip: 127.0.0.1 #Ip address which the lidar packets will be send to 2.3.4、执行以下命令即可编译&运行 catkin_make source devel/setup.bash roslaunch rslidar_sdk start.launch这时候,工程开始运行,会自动打开rviz, 2.3.5、通过“rviz”来观看点云
俯视图: 雷达有一些参数需要设置,需要通过launch文件进行传递。 model: 指定雷达类型。目前三个选项 RS32、RS16 和RSBPEARL,分别指32线、16线、补盲雷达 device_ip:雷达ip msop_port:MSOP数据包接收端口 difop_port:DIFOP数据包接收端口 lidar_param_path:雷达标定参数文件存放位置 pcap:要解析的pcap包存放路径。注意指定此参数,则驱动就不会接收从雷达发出的数据 curves_path:指定反射率标定文件curves.csv完整路径。针对intensity_mode为1和2。 angle_path:指定角度标定文件angle.csv完整路径 channel_path:指定距离补偿文件ChannelNum.csv完整路径。一般使用默认全0参数即可。 curves_rate_path:指定反射率洗漱标定文件CurveRate.csv完整路径。一般不需要 max_distance:指定点云距离上限 min_distance:指定点云距离下限 resolution_type:指定雷达距离解析分辨类型,“0.5cm” 和 “1cm” 二选一 intensity_mode:指定雷达反射率模式,分别为1,2,3 三选一 cut_angle:采用角度分帧方式 三、录制点云离线包:robosense官方:如何录制与解码rosbag 修改cfg文件 common: msg_source: 1 send_packet_ros: true send_point_cloud_ros: true send_packet_proto: false send_point_cloud_proto: false pcap_path: /home/robosense/lidar.pcap为了记录雷达packet, 需要设置 send_packet_ros = true。 首先在线连接雷达并将点云发送至ROS。如果对此不太了解, 请先阅读 在线连接雷达并发送点云到ROS 。 现在可以直接录制点云消息,这样在离线播包时不需要再另外运行驱动程序解包。但这种方法会导致录制的包非常大。 因此,通常建议记录雷达packet数据,而不是记录点云数据。录制命令:先运行雷达驱动 roslaunch rslidar_sdk start.launch然后打开新窗口,进行录制。 osbag record /rslidar_packets /rslidar_packets_difop -O bag 四、 离线解码修改cfg文件 common: msg_source: 2 send_packet_ros: false send_point_cloud_ros: true send_packet_proto: false send_point_cloud_proto: false pcap_path: /home/robosense/bag.bag # bag文件路径及名称由于数据包消息来自ROS,因此设置 msg_source = 2 。 将点云发送到ROS,因此设置 send_point_cloud_ros = true。 先运行雷达驱动 roslaunch rslidar_sdk start.launch然后打开新窗口,进行播放bag文件。 rosbag play bag.bag播放成功: 1、https://github.com/RoboSense-LiDAR/rslidar_sdk2、robosense激光雷达使用及适配autoware |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |